# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Contributor: Sheila Aman <sheila@vulpine.house>
# Maintainer: Lucas Ramage <ramage.lucas@protonmail.com>
pkgname=bash-completion
pkgver=2.11
pkgrel=6
pkgdesc="Command-line tab-completion for bash"
options="!check" # 7 Tests fail
url="https://github.com/scop/bash-completion"
arch="noarch"
license="GPL-2.0-or-later"
depends="bash"
makedepends="autoconf automake bc grep iputils musl-utils procps psmisc sed usbutils"
checkdepends="py3-pexpect py3-pytest"
subpackages="$pkgname-dev $pkgname-doc"
source="https://github.com/scop/bash-completion/releases/download/$pkgver/bash-completion-$pkgver.tar.xz"

# Provided by other packages
_conflicting="
	_adb
	cal
	chsh
	dmesg
	eject
	hd
	hexdump
	hwclock
	ionice
	look
	makepkg
	ncal
	newgrp
	renice
	rfkill
	rtcwake
	su
	nmcli
	umount
	mount
	"

prepare() {
	default_prepare

	# ifup/down tests are still failing
	rm $builddir/test/t/test_ifdown.py
	rm $builddir/test/t/test_ifup.py
	sed -i '/test_ifdown.py \\/d' $builddir/test/t/Makefile.am
	sed -i '/test_ifup.py \\/d' $builddir/test/t/Makefile.am
	autoreconf -fiv
}

build() {
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--sysconfdir=/etc \
		--mandir=/usr/share/man \
		--localstatedir=/var
	make
}

check() {
	mkdir ./bin
	ln -sf "$(command -v pytest-3)" ./bin/pytest
	export PATH="${PATH}:$PWD/bin"
	make check
}

package() {
	make -j1 DESTDIR="$pkgdir" install

	# /etc/profile sources profile.d, and this occurs only in login shells
	# it should not then load completions or expect the bashrc to source the profile directory.
	# so, we move the sourcing script to /etc/bash, and include it from the bashrc when present.
	mkdir -p "$pkgdir"/etc/bash
	mv "$pkgdir"/etc/profile.d/bash_completion.sh \
		"$pkgdir"/etc/bash/
	rmdir -p "$pkgdir"/etc/profile.d/ || true
	

	mkdir -p "$pkgdir"/usr/share/doc/$pkgname/
	install -m644 AUTHORS CHANGES CONTRIBUTING.md README.md \
		"$pkgdir"/usr/share/doc/$pkgname/

	cd "$pkgdir"/usr/share/bash-completion/completions
	for c in $_conflicting; do
		rm -f $c
	done

	mkdir -p "$pkgdir"/usr/lib
	mv "$pkgdir"/usr/share/pkgconfig "$pkgdir"/usr/lib/pkgconfig
}

sha512sums="
41585f730b5114d397831ba36d10d05643c6a6179e746ddc49aa1cbef61ea5525fd2f09b2e474adee14e647f99df8d5983ee48e29a59d8a30e1daf7fb1837e06  bash-completion-2.11.tar.xz
"
